ifeq makefile 或语句 |
您所在的位置:网站首页 › makefile ifdef逻辑或 › ifeq makefile 或语句 |
(1)ifeq的用法 ifeq ($(变量名), 变量值 ) ........ else ifeq ($(..), ..) ......... else ......... endif (2)最近在学习makefile的过程中遇到需要用ifeq进行逻辑与判断,但是ifeq并没有像其他编程语言那样有 逻辑或(||) 逻辑与(&&) 的符号可用。这时候需要变通一下。 1)逻辑与变通实现: 举例说明:比如需要判断两个变量 VALUE1 和 VALUE2 的值都存在才执行某个动作,这需要逻辑与的判断 C语言的逻辑: if ( VALUE1 && VALUE2){ do something.... } 没有&&符号,我们可以这样变通:将两个变量链接起来再判断 ifneq ($(VALUE1)$(VALUE2),) do something.... endif 如果变量 VALUE1 和 VALUE2 都有具体的值,比如需要进行这样的判断: VALUE1 == V1 && VALUE2 == V2, 可以按如下的写法; ifeq ($(VALUE1)_$(VALUE2), V1_V2) ### 当然中间的下划线 "_" 可以用其他字符代替 do something.... endif 2) 逻辑或变通实现,同样是上面的两个变量 if( VALUE1 == V1 || VALUE2 == V2 ) {...} 可以用findstring函数做如下变通实现: #如果VALUE1或者VALUE2为V1或V2,则findstring 不会返回空。 ifneq ($(findstring $(VALUE1)$(VALUE2), V1 V2),) do something... endif |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |